Arm backend: Add manifest validation and add Backwards compabillety testing#18813
Arm backend: Add manifest validation and add Backwards compabillety testing#18813Sebastian-Larsson wants to merge 3 commits intopytorch:mainfrom
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/18813
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ❌ 1 New Failure, 4 Unrelated FailuresAs of commit a799b2d with merge base 36e8ed9 ( NEW FAILURE - The following job has failed:
FLAKY - The following job failed but was likely due to flakiness present on trunk:
BROKEN TRUNK - The following jobs failed but was present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
Hi @digantdesai we tried to handle the buck2 files with this, but you might want to take a peek anyway. |
a38dcd1 to
3c5c6b2
Compare
Add a validator script that compares one public API manifest against the current backends/arm API using exact symbol, kind, and signature matching. Add regression tests for manifest drift, and run the validator from the Arm pre-push hook on every push. Change-Id: I4765510b8a2f8c5aa09717fc8287d976c770897d Signed-off-by: Sebastian Larsson <sebastian.larsson@arm.com>
Introduce BC tests and add those as well as the validation of the public API manifest to CI in the pull job. Change-Id: I1815223a13109e225f2b9e0f9914b504799db2ae Signed-off-by: Sebastian Larsson <sebastian.larsson@arm.com>
Flatten nested TOML tables when reading Python public API manifest entries so validation also checks nested symbols. Add regression coverage that shows nested entries are parsed and that missing nested symbols are reported by validation. Signed-off-by: Sebastian Larsson <sebastian.larsson@arm.com> Change-Id: Ic04883d07647b3b6f4ed9b86c68d969dcbd90ade
3c5c6b2 to
a799b2d
Compare
|
@digantdesai this adds some files and update buck2 stuff so you might want to check this :) |
|
Thanks. Buck CI is running internally now and I'll report back if there's anything issues. |
|
@GregoryComer has imported this pull request. If you are a Meta employee, you can view this in D101685482. |
| # | ||
| # This file is generated by | ||
| # backends/arm/scripts/generate_public_api_manifest.py | ||
| # backends/arm/scripts/public_api_manifest/generate_public_api_manifest.py |
There was a problem hiding this comment.
I know this is not the PR introducing this API checker, but two questions,
(1) why not rely on unit-tests to enforce the actual behavior, beyond API BC
(2) why not use Griffe or something similar to do this for you?
digantdesai
left a comment
There was a problem hiding this comment.
Ok with this PR, but left a couple of question for the original motivation (sorry I was out for a few months)
|
The internal buck build is complaining about the following: |
cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @robell